﻿using System;
using System.Diagnostics;

namespace Bing
{
    /// <summary>
    /// Contains parameters for a request to any Bing <see cref="ApiHelper.SourceType"/>. 
    /// </summary>
    [DebuggerDisplay("Query={Query}, Version:{Version}, Market:{Market}, Source:{Sources.Count}")]
    public class SearchRequest: IBingRequest
    {
        /// <summary>
        /// Gets or sets the Application ID supplied by the Developer Provisioning System.
        /// </summary>
        /// <value>The Application ID supplied by the Developer Provisioning System.</value>
        public string AppId { get; set; }

        /// <summary>
        /// Gets or sets the text of the query submitted to the Bing Engine for a SearchRequest.
        /// </summary>
        /// <value>Text of the query submitted to the Bing Engine for a SearchRequest.</value>
        /// <remarks>
        /// The query can contain any valid query text supported by the Bing Engine.<br />
        /// Note: For the News <see cref="ApiHelper.SourceType"/>, if a value is not specified for this property, Bing attempts to return a selection of local news headlines.<br />
        /// </remarks>
        public string Query { get; set; }

        /// <summary>
        /// Gets or sets the array representing one of the sources in the <see cref="ApiHelper.SourceType"/>s.
        /// </summary>
        /// <value>An array of strings.</value>
        public ApiHelper.SourceType[] Sources { get; set; }

        /// <summary>
        /// Gets or sets the version of the Bing API to which this request will be sent.
        /// </summary>
        /// <value>The version of the Bing API to which this request will be sent.</value>
        public string Version { get; set; }

        /// <summary>
        /// Gets or sets the language and country/region information for the <see cref="SearchRequest"/>.
        /// </summary>
        /// <value>Language and country/region information for the <see cref="SearchRequest"/>.</value>
        /// <remarks>
        /// <p>The market parameter is optional. If the parameter is not specified, the API will attempts to determine an applicable market through the use of logic such as the IP address of the request, cookies. and other elements.</p>
        /// <p>Table 1 presents valid values for this parameter. </p>
        /// <p>
        ///   <strong>Note</strong>: Not all SourceTypes support all markets.</p>
        /// <p>
        ///   <strong>Table 1. Values for the Market parameter</strong>
        /// </p>
        /// <h3 class="subHeading"></h3>
        /// <table>
        ///   <tbody><tr>
        ///     <th colspan="1">
        /// Market Name
        /// </th>
        ///     <th colspan="1">
        /// Language-Country/Region
        /// </th>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ar-XA</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Arabic – Arabia</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>bg-BG</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Bulgarian – Bulgaria</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>cs-CZ</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Czech – Czech Republic</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>da-DK</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Danish – Denmark</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>de-AT</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>German – Austria</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>de-CH</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>German – Switzerland</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>de-DE</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>German – Germany</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>el-GR</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Greek – Greece</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-AU</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English– Australia</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-CA</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English – Canada</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-GB</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English – United Kingdom</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-ID</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English – Indonesia</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-IE</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English – Ireland</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-IN</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English – India</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-MY</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English– Malaysia</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-NZ</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English– New Zealand</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-PH</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English– Philippines</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-SG</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English– Singapore</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-US</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English– United States</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-XA</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English– Arabia</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en-ZA</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English– South Africa</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>es-AR</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Spanish– Argentina</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>es-CL</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Spanish– Chile</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>es-ES</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Spanish– Spain</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>es-MX</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Spanish– Mexico</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>es-US</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Spanish– United States</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>es-XL</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Spanish– Latin America</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>et-EE</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Estonian– Estonia</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>fi-FI</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Finnish– Finland</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>fr-BE</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>French– Belgium</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>fr-CA</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>French– Canada</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>fr-CH</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>French– Switzerland</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>fr-FR</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>French– France</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>he-IL</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Hebrew– Israel</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>hr-HR</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Croatian– Croatia</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>hu-HU</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Hungarian– Hungary</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>it-IT</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Italian– Italy</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ja-JP</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Japanese– Japan</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ko-KR</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Korean– Korea</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>lt-LT</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Lithuanian– Lithuania</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>lv-LV</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Latvian– Latvia</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>nb-NO</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Norwegian– Norway</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>nl-BE</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Dutch– Belgium</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>nl-NL</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Dutch– Netherlands</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>pl-PL</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Polish– Poland</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>pt-BR</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Portuguese– Brazil</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>pt-PT</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Portuguese– Portugal</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ro-RO</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Romanian– Romania</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ru-RU</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Russian– Russia</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sk-SK</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Slovak– Slovak Republic</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sl-SL</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Slovenian– Slovenia</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sv-SE</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Swedish– Sweden</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>th-TH</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Thai– Thailand</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>tr-TR</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Turkish– Turkey</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>uk-UA</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Ukrainian– Ukraine</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>zh-CN</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Chinese– China</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>zh-HK</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Chinese– Hong Kong SAR</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>zh-TW</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Chinese– Taiwan</p>
        ///     </td>
        ///   </tr>
        /// </tbody></table>		
        /// </remarks>
        public string Market { get; set; }

        /// <summary>
        /// Gets or sets the adult content filter.
        /// </summary>
        /// <value>The adult content filter.</value>
        /// <remarks>Not setting this property means that the API will use the default adult value for a given market, which may vary per market. In addition, for certain markets, the adult should not be lower than the predefined adult value for that market. For example, in de-de market, adult is always set to strict</remarks>
        public ApiHelper.AdultOption? Adult { get; set; }

        /// <summary>
        /// Gets or sets the language in which user interface strings are presented.
        /// </summary>
        /// <value>The language in which user interface strings are presented.</value>
        /// <remarks>
        /// <p>Table 1 includes valid UILanguage codes.</p>
        /// <p>
        ///   <strong>Note</strong>: Not all support <see cref="ApiHelper.SourceType"/>s support all languages.</p>
        /// <h3 class="subHeading"></h3>
        /// <table>
        ///   <tbody><tr>
        ///     <th colspan="1">
        /// Code
        /// </th>
        ///     <th colspan="1">
        /// UILanguage
        /// </th>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>aa</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Afar</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ab</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Abkhazian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ae</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Avestan</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>af</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Afrikaans</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ak</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Akan</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>am</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Amharic</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>an</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Aragonese</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ar</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Arabic</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>as</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Assamese</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>av</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Avaric</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ay</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Aymara</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>az</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Azerbaijani</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ba</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Bashkir</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>be</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Belarusian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>bg</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Bulgarian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>bh</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Bihari</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>bi</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Bislama</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>bm</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Bambara</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>bn</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Bengali</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>bo</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Tibetan</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>br</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Breton</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>bs</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Bosnian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ca</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Catalan</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ce</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Chechen</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ch</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Chamorro</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>co</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Corsican</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>cr</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Cree</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>cs</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Czech</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>cu</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Church Slavic</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>cv</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Chuvash</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>cy</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Welsh</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>da</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Danish</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>de</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>German</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>dv</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Divehi</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>dz</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Dzongkha</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ee</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Ewe</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>el</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Greek</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>en</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>English</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>eo</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Esperanto</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>es</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Spanish</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>et</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Estonian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>eu</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Basque</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>fa</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Persian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ff</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Fulah</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>fi</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Finnish</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>fj</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Fijian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>fo</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Faroese</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>fr</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>French</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>fy</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Western Frisian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ga</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Irish</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>gd</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Scottish Gaelic</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>gl</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Galician</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>gn</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Guaraní</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>gu</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Gujarati</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>gv</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Manx</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ha</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Hausa</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>he</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Hebrew</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>hi</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Hindi</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ho</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Hiri Motu</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>hr</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Croatian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ht</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Haitian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>hu</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Hungarian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>hy</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Armenian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>hz</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Herero</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ia</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Interlingua (International Auxiliary Language Association)</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>id</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Indonesian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ie</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Interlingue</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ig</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Igbo</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ii</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Sichuan Yi</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ik</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Inupiaq</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>io</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Ido</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>is</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Icelandic</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>it</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Italian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>iu</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Inuktitut</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ja</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Japanese</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>jv</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Javanese</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ka</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Georgian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>kg</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Kongo</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ki</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Kikuyu</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>kj</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Kwanyama</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>kk</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Kazakh</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>kl</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Kalaallisut</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>km</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Khmer</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>kn</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Kannada</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ko</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Korean</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>kr</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Kanuri</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ks</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Kashmiri</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ku</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Kurdish</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>kv</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Komi</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>kw</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Cornish</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ky</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Kirghiz</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>la</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Latin</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>lb</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Luxembourgish</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>lg</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Ganda</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>li</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Limburgish</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ln</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Lingala</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>lo</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Lao</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>lt</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Lithuanian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>lu</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Luba-Katanga</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>lv</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Latvian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>mg</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Malagasy</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>mh</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Marshallese</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>mi</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Maori</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>mk</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Macedonian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ml</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Malayalam</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>mn</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Mongolian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>mo</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Moldavian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>mr</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Marathi</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ms</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Malay</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>mt</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Maltese</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>my</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Burmese</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>na</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Nauru</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>nb</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Norwegian Bokmål</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>nd</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>North Ndebele</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ne</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Nepali</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ng</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Ndonga</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>nl</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Dutch</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>nn</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Norwegian Nynorsk</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>no</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Norwegian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>nr</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>South Ndebele</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>nv</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Navajo</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ny</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Chichewa</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>oc</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Occitan</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>oj</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Ojibwa</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>om</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Oromo</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>or</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Oriya</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>os</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Ossetian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>pa</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Panjabi</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>pi</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Pali</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>pl</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Polish</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ps</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Pashto</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>pt</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Portuguese</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>qu</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Quechua</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>rm</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Raeto-Romance</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>rn</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Kirundi</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ro</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Romanian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ru</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Russian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>rw</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Kinyarwanda</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sa</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Sanskrit</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sc</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Sardinian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sd</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Sindhi</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>se</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Northern Sami</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sg</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Sango</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sh</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Serbo-Croatian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>si</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Sinhala</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sk</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Slovak</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sl</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Slovenian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sm</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Samoan</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sn</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Shona</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>so</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Somali</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sq</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Albanian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sr</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Serbian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ss</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Swati</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>st</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Southern Sotho</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>su</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Sundanese</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sv</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Swedish</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>sw</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Swahili</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ta</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Tamil</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>te</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Telugu</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>tg</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Tajik</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>th</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Thai</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ti</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Tigrinya</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>tk</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Turkmen</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>tl</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Tagalog</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>tn</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Tswana</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>to</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Tonga</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>tr</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Turkish</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ts</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Tsonga</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>tt</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Tatar</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>tw</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Twi</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ty</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Tahitian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ug</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Uighur</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>uk</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Ukrainian</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ur</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Urdu</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>uz</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Uzbek</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>ve</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Venda</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>vi</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Vietnamese</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>vo</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Volapük</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>wa</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Walloon</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>wo</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Wolof</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>xh</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Xhosa</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>yi</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Yiddish</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>yo</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Yoruba</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>za</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Zhuang</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>zh</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Chinese</p>
        ///     </td>
        ///   </tr>
        ///   <tr>
        ///     <td colspan="1">
        ///       <p>zu</p>
        ///     </td>
        ///     <td colspan="1">
        ///       <p>Zulu</p>
        ///     </td>
        ///   </tr>
        /// </tbody></table>
        /// <p>
        ///   <strong>Table 1. Language Codes</strong>
        /// </p>			
        /// </remarks>
        public string UILanguage { get; set; }

        /// <summary>
        /// Gets or sets the latitude component of the <see cref="SearchRequest"/> location.
        /// </summary>
        /// <value>The latitude component of the <see cref="SearchRequest"/> location.</value>
        /// <remarks>
        /// Valid input values for Latitude range from -90 to 90. For accurate results, input values must be converted to the decimal representation of the Latitude value. Output values are returned in decimal format for results of SourceType.PhoneBook only.<br />
        /// Latitude lines are measured North and South from the equator in degrees, minutes, and seconds. The equator is defined as 0 degrees, the North Pole is 90 degrees north, and the South Pole is 90 degrees south. For example, the latitude of Seattle, Washington is 47° 36' 23.17" N, which converts to the (positive) decimal value 47.603828.<br />
        /// </remarks>
        public double Latitude { get; set; }

        /// <summary>
        /// Gets or sets the longitude of the <see cref="SearchRequest"/> location.
        /// </summary>
        /// <value>The longitude of the <see cref="SearchRequest"/> location.</value>
        /// <remarks>
        /// Valid input values for Longitude range from -180 to 180. For accurate results, input values must be converted to the decimal representation of the Longitude value. Output values are returned in decimal format for results of SourceType.PhoneBook only. <br />
        /// Lines of longitude, also known as meridians, run between the North and South Poles. They measure east-west position in degrees, minutes, and seconds. The Prime Meridian, which runs through Greenwich, England, is assigned the value of 0 degrees. Meridians to the west of the Prime Meridian are assigned negative values, and those to the east are assigned positive values. For example, the longitude of Seattle, Washington is 122° 19' 51.04" W, which converts to the (negative) decimal value of -122.328567.<br />
        /// </remarks>
        public double Longitude { get; set; }

        /// <summary>
        /// Gets or sets the distance in any direction for which results will be provided for a request that specifies latitude and longitude.
        /// </summary>
        /// <value>The distance in any direction for which results will be provided for a request that specifies latitude and longitude.</value>
        /// <remarks>Valid input values for Radius range from 0 to 250 miles. The default input value is 5 miles. The output value for Radius is insignificant; it is always set to the default input value of 5.</remarks>
        public double Radius { get; set; }

        // TODO: Documentation Error: http://msdn.microsoft.com/en-us/library/dd251023.aspx, Should Be SearchOption, syntax error public SearchOption[] Options
        /// <summary>
        /// Gets or sets the options related to a request.
        /// </summary>
        /// <value>Contains members that specify options related to a request..</value>
        public ApiHelper.SearchOption[] Options { get; set; }

        /// <summary>
        /// Creates the query string for the API call.
        /// </summary>
        /// <returns>The query string to append to the call.</returns>
        public string ToQueryString()
        {
            string request = "http://api.search.live.net/xml.aspx?";
            request += string.Format("AppId={0}", AppId);
            request += string.Format("&Query={0}", Query);
            if (Version != null) request += string.Format("&Version={0}", Version);
            if (Market != null) request += string.Format("&Market={0}", Market);
            if (Adult != null) request += string.Format("&Adult={0}", Enum.GetName(typeof(ApiHelper.AdultOption), Adult));
            if (UILanguage != null) request += string.Format("&UILanguage={0}", UILanguage);
            if (Latitude != 0 && Longitude != 0 && Radius != 0)
            {
                request += string.Format("&Latitude={0}", Latitude);
                request += string.Format("&Longitude={0}", Longitude);
                request += string.Format("&Radius={0}", Radius);
            }

            foreach (ApiHelper.SourceType sourceType in Sources)
            {
                request += string.Format("&Sources={0}", Enum.GetName(typeof(ApiHelper.SourceType), sourceType));
            }

            if (Options != null)
            {
                foreach (ApiHelper.SearchOption option in Options)
                {
                    request += string.Format("&Options={0}",Enum.GetName(typeof (ApiHelper.SearchOption), option));
                }
            }
            return request;
        }

    }
}
